In modern computing devices such as Laptops, Ultra-Mobile PCs (UMPCs), and Mobile Internet Devices (MIDs) there may exist multiple network interfaces such as Ethernet, Wi-Fi, Bluetooth, WiMAX, and/or 3G (third generation wireless for mobile phones). Current operating systems don't use multiple interfaces for communication with devices on the available networks. They default to using one interface when multiple interfaces of a single machine are connected to the same network.
The Open Systems Interconnection (OSI) model and the TCP/IP or Internet reference model for network protocol stacks provide layered abstract descriptions for communications, with upper layers including an application layer and a transport layer and lower layers including a network layer, a data link layer and a physical layer.
The data link layer provides for transfer of data between network entities and detects/corrects errors that may occur in the physical layer. Originally intended for point-to-point and point-to-multipoint media of the telephone system wide area networks (WANs), the data link layer in local area network (LAN) architectures, which include broadcast-capable multi-access media (e.g. as in IEEE Project 802) provide for sublayering and management functions not originally required for WAN use. In practice though, flow control is not present in modern data link protocols such as the Point-to-Point Protocol (PPP), and the Logic Link Control (LLC) of IEEE 802.2 is not used for most protocols on Ethernets or other LANs. Thus, potential benefits of flow control in the data link layer have not been fully explored.